package com.ruoyi.dl.domain;

import java.math.BigDecimal;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 发单商品对象 dl_orders_goods
 *
 * @author ruoyi
 * @date 2020-12-28
 */
public class DlOrdersGoods extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    private Integer id;

    /**
     * 发单号
     */
    @Excel(name = "发单号")
    private String goodsNumber;

    /**
     * 游戏区服
     */
    @Excel(name = "游戏区服")
    private String gameArea;

    /**
     * 铭文等级
     */
    @Excel(name = "铭文等级")
    private Integer inscriptionsNumber;

    /**
     * 英雄数量
     */
    @Excel(name = "英雄数量")
    private Integer heroNumber;

    /**
     * 当前段位
     */
    @Excel(name = "当前段位")
    private String nowDan;

    /**
     * 目标段位
     */
    @Excel(name = "目标段位")
    private String targetDan;

    /**
     * 时限
     */
    @Excel(name = "时限")
    private String timeLimit;

    /**
     * 游戏账号
     */
    @Excel(name = "游戏账号")
    private String gameUnumber;

    /**
     * 游戏密码
     */
    @Excel(name = "游戏密码")
    private String gamePassward;

    /**
     * 英雄
     */
    @Excel(name = "英雄")
    private String heroName;

    /**
     * 发单人id
     */
    @Excel(name = "发单人id")
    private Integer userId;

    /**
     * 价格
     */
    @Excel(name = "价格")
    private BigDecimal orderPrice;

    /**
     * 保证金
     */
    @Excel(name = "保证金")
    private BigDecimal bzMoney;

    /**
     * 效率金
     */
    @Excel(name = "效率金")
    private BigDecimal xlMoney;

    /**
     * 代练要求（300字）
     */
    @Excel(name = "代练要求", readConverterExp = "3=00字")
    private String requirements;

    /**
     * 游戏id
     */
    @Excel(name = "游戏id")
    private Integer gameId;

    /**
     * 订单类型（0：代练，1：陪玩）
     */
    @Excel(name = "订单类型（0：代练，1：陪玩）")
    private Integer orderType;

    /**
     * 代练类型（0：排位赛，1：巅峰赛，2：荣耀战力，3：赏金自定义发布）
     */
    @Excel(name = "代练类型（0：排位赛，1：巅峰赛，2：荣耀战力，3：赏金自定义发布）")
    private Integer trainType;

    /**
     * 内容
     */
    private String stance;

    /**
     * 是否上架（0:下架，1：上架）
     */
    private Integer tag;


    private DlOrders orders;

    private DlUser user;

    private Integer isHosting;

    private Integer antiAddiction;

    private String taker;

    public String getTaker() {
        return taker;
    }

    public void setTaker(String taker) {
        this.taker = taker;
    }

    public Integer getAntiAddiction() {
        return antiAddiction;
    }

    public void setAntiAddiction(Integer antiAddiction) {
        this.antiAddiction = antiAddiction;
    }

    private DlRecreation dlRecreation;

    /**
     * 索引
     */
    private Integer pageIndex;

    /**
     * 显示多少条
     */
    private Integer pageSize;

    /**
     * 排序字段
     */
    private String fieldName;

    /**
     * 排序顺序(asc,desc)
     */
    private String sortName;

    /**
     * 订单状态（1：未完成，2：订单异常，3：代练完成，4：订单完成，5:申请撤销中）
     */
    private Integer billType;

    private boolean status = true;

    private String myName;

    public String getMyName() {
        String str = "";
        if (this.trainType.equals(0)) {
            str += "排位赛-";
        } else if (this.trainType.equals(1)) {
            str += "巅峰赛-";
        } else if (this.trainType.equals(2)) {
            str += "荣耀战力-";
        }
        str += this.nowDan + "到" + this.targetDan + "-" + timeLimit + "小时";

        return str;
    }

    public boolean isStatus() {
        return status;
    }

    public void setStatus(boolean status) {
        this.status = status;
    }

    public String getFieldName() {
        return fieldName;
    }

    public DlOrdersGoods setFieldName(String fieldName) {
        this.fieldName = fieldName;
        return this;
    }

    public String getSortName() {
        return sortName;
    }

    public DlOrdersGoods setSortName(String sortName) {
        this.sortName = sortName;
        return this;
    }

    public DlRecreation getDlRecreation() {
        return dlRecreation;
    }

    public void setDlRecreation(DlRecreation dlRecreation) {
        this.dlRecreation = dlRecreation;
    }

    public Integer getIsHosting() {
        return isHosting;
    }

    public void setIsHosting(Integer isHosting) {
        this.isHosting = isHosting;
    }

    public DlOrders getOrders() {
        return orders;
    }

    public void setOrders(DlOrders orders) {
        this.orders = orders;
    }

    public void setUser(DlUser user) {
        this.user = user;
    }

    public DlUser getUser() {
        return user;
    }

    public Integer getTag() {
        return tag;
    }

    public void setTag(Integer tag) {
        this.tag = tag;
    }

    public String getGoodsNumber() {
        return goodsNumber;
    }

    public void setGoodsNumber(String goodsNumber) {
        this.goodsNumber = goodsNumber;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return id;
    }

    public void setGameArea(String gameArea) {
        this.gameArea = gameArea;
    }

    public String getGameArea() {
        return gameArea;
    }

    public void setInscriptionsNumber(Integer inscriptionsNumber) {
        this.inscriptionsNumber = inscriptionsNumber;
    }

    public Integer getInscriptionsNumber() {
        return inscriptionsNumber;
    }

    public void setHeroNumber(Integer heroNumber) {
        this.heroNumber = heroNumber;
    }

    public Integer getHeroNumber() {
        return heroNumber;
    }

    public void setNowDan(String nowDan) {
        this.nowDan = nowDan;
    }

    public String getNowDan() {
        return nowDan;
    }

    public void setTargetDan(String targetDan) {
        this.targetDan = targetDan;
    }

    public String getTargetDan() {
        return targetDan;
    }

    public void setTimeLimit(String timeLimit) {
        this.timeLimit = timeLimit;
    }

    public String getTimeLimit() {
        return timeLimit;
    }

    public void setGameUnumber(String gameUnumber) {
        this.gameUnumber = gameUnumber;
    }

    public String getGameUnumber() {
        return gameUnumber;
    }

    public void setGamePassward(String gamePassward) {
        this.gamePassward = gamePassward;
    }

    public String getGamePassward() {
        return gamePassward;
    }

    public void setHeroName(String heroName) {
        this.heroName = heroName;
    }

    public String getHeroName() {
        return heroName;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setOrderPrice(BigDecimal orderPrice) {
        this.orderPrice = orderPrice;
    }

    public BigDecimal getOrderPrice() {
        return orderPrice;
    }

    public void setBzMoney(BigDecimal bzMoney) {
        this.bzMoney = bzMoney;
    }

    public BigDecimal getBzMoney() {
        return bzMoney;
    }

    public void setXlMoney(BigDecimal xlMoney) {
        this.xlMoney = xlMoney;
    }

    public BigDecimal getXlMoney() {
        return xlMoney;
    }

    public void setRequirements(String requirements) {
        this.requirements = requirements;
    }

    public String getRequirements() {
        return requirements;
    }

    public Integer getGameId() {
        return gameId;
    }

    public DlOrdersGoods setGameId(Integer gameId) {
        this.gameId = gameId;
        return this;
    }

    public Integer getOrderType() {
        return orderType;
    }

    public DlOrdersGoods setOrderType(Integer orderType) {
        this.orderType = orderType;
        return this;
    }

    public Integer getTrainType() {
        return trainType;
    }

    public DlOrdersGoods setTrainType(Integer trainType) {
        this.trainType = trainType;
        return this;
    }

    public String getStance() {
        return stance;
    }

    public DlOrdersGoods setStance(String stance) {
        this.stance = stance;
        return this;
    }

    public Integer getPageIndex() {
        return pageIndex;
    }

    public DlOrdersGoods setPageIndex(Integer pageIndex) {
        this.pageIndex = pageIndex;
        return this;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public DlOrdersGoods setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
        return this;
    }

    public Integer getBillType() {
        return billType;
    }

    public DlOrdersGoods setBillType(Integer billType) {
        this.billType = billType;
        return this;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("gameArea", getGameArea())
                .append("inscriptionsNumber", getInscriptionsNumber())
                .append("heroNumber", getHeroNumber())
                .append("nowDan", getNowDan())
                .append("targetDan", getTargetDan())
                .append("timeLimit", getTimeLimit())
                .append("gameUnumber", getGameUnumber())
                .append("gamePassward", getGamePassward())
                .append("heroName", getHeroName())
                .append("userId", getUserId())
                .append("orderPrice", getOrderPrice())
                .append("bzMoney", getBzMoney())
                .append("xlMoney", getXlMoney())
                .append("requirements", getRequirements())
                .append("createTime", getCreateTime())
                .append("gameId", getGameId())
                .append("orderType", getOrderType())
                .append("trainType", getTrainType())
                .append("stance", getStance())
                .append("pageSize", getPageSize())
                .append("pageIndex", getPageIndex())
                .append("fieldName", getFieldName())
                .append("sortName", getSortName())
                .append("billType", getBillType())
                .toString();
    }
}
